package com.ztc.ZtcTransport.bean;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;

import com.sun.istack.internal.NotNull;
import org.hibernate.annotations.GenericGenerator;
import com.aqgj.util.BaseEntity;

import java.math.BigDecimal;
import java.util.Date;

@Entity
@Table(name = "ztc_transport")
public class ZtcTransport implements BaseEntity{

    private String id;//id

    private String fullName;//公司名称

    private String address;//地址

    private String signTel;//注册电话

    private java.lang.Integer status;//状态(1注册未审核，2未通过审核，3已通过审核，4冻结，5正常待审核，6正常未通过)

    private java.lang.Integer type;//类型(0总公司，1省管理公司，2地级市公司，3运营公司，4车方公司,5快递公司)

    private String areaCode;//区域代码

    private String parentId;//父级公司id

    private String email;//电子邮箱

    private java.util.Date beginValidateTime;//有效期起始时间

    private java.util.Date endValidateTime;//有效期结束时间

    private String examineRemark;//审核意见

    private String examineUserId;//审核用户id

    private String examineUsername;//审核用户

    private Date examineTime;//审核时间

    private Date signTime; //注册时间

    private Integer fixedFeeDeduction;//固定扣费

    private BigDecimal distributorRebateProportion;//分销商返佣比例

    private BigDecimal userRebateProportion;//普通用户返佣比例

    private BigDecimal revenueProportion;//税收比例

    private Integer isPermission;//锁定公司设置提成比例权限(1锁定，2不锁定)

    public void setId(String value){
        this.id = value;
    }
    public void setFullName(String value){
        this.fullName = value;
    }
    public void setAddress(String value){
        this.address = value;
    }
    public void setSignTel(String value){
        this.signTel = value;
    }
    public void setStatus(java.lang.Integer value){
        this.status = value;
    }
    public void setType(java.lang.Integer value){
        this.type = value;
    }
    public void setAreaCode(String value){
        this.areaCode = value;
    }
    public void setParentId(String value){
        this.parentId = value;
    }
    public void setBeginValidateTime(java.util.Date value){
        this.beginValidateTime = value;
    }
    public void setEndValidateTime(java.util.Date value){
        this.endValidateTime = value;
    }
    public void setExamineRemark(String value){
        this.examineRemark = value;
    }
    public void setSignTime(Date value) { this.signTime = value; }
    public void setExamineUserId(String examineUserId) { this.examineUserId = examineUserId;}
    public void setExamineUsername(String examineUsername) { this.examineUsername = examineUsername;}
    public void setExamineTime(Date examineTime) {this.examineTime = examineTime;}
    public void setFixedFeeDeduction(Integer fixedFeeDeduction) { this.fixedFeeDeduction = fixedFeeDeduction;}
    public void setDistributorRebateProportion(BigDecimal distributorRebateProportion) { this.distributorRebateProportion = distributorRebateProportion;}
    public void setUserRebateProportion(BigDecimal userRebateProportion) { this.userRebateProportion = userRebateProportion;}
    public void setRevenueProportion(BigDecimal revenueProportion) { this.revenueProportion = revenueProportion;}
    public void setIsPermission(Integer isPermission) {  this.isPermission = isPermission; }
    public void setEmail(String email) {  this.email = email;   }

    @Id
    @GeneratedValue(generator = "system-uuid")
    @GenericGenerator(name = "system-uuid", strategy = "uuid")
    @Column(name ="id",unique=true,nullable=false,insertable=true,updatable=true,length=32)
    public String getId(){
        return this.id;
    }
    @Column(name ="full_name",unique=false,nullable=true,insertable=true,updatable=true,length=255)
    public String getFullName(){
        return this.fullName;
    }
    @Column(name ="address",unique=false,nullable=true,insertable=true,updatable=true,length=255)
    public String getAddress(){ return this.address; }
    @Column(name ="sign_tel",unique=false,nullable=true,insertable=true,updatable=true,length=11)
    public String getSignTel(){
        return this.signTel;
    }
    @Column(name ="status",unique=false,nullable=true,insertable=true,updatable=true,length=4)
    public java.lang.Integer getStatus(){return this.status;}
    @Column(name ="type",unique=false,nullable=true,insertable=true,updatable=true,length=4)
    public java.lang.Integer getType(){ return this.type;}
    @Column(name ="area_code",unique=false,nullable=true,insertable=true,updatable=true,length=32)
    public String getAreaCode(){
        return this.areaCode;
    }
    @Column(name ="parent_id",unique=false,nullable=true,insertable=true,updatable=true,length=32)
    public String getParentId(){
        return this.parentId;
    }
    @Column(name ="begin_validate_time",unique=false,nullable=true,insertable=true,updatable=true,length=0)
    public java.util.Date getBeginValidateTime(){
        return this.beginValidateTime;
    }
    @Column(name ="end_validate_time",unique=false,nullable=true,insertable=true,updatable=true,length=0)
    public java.util.Date getEndValidateTime(){
        return this.endValidateTime;
    }
    @Column(name ="examine_remark",unique=false,nullable=true,insertable=true,updatable=true,length=1024)
    public String getExamineRemark(){
        return this.examineRemark;
    }
    @Column(name ="sign_time",unique=false,nullable=true,insertable=true,updatable=true,length=0)
    public Date getSignTime() { return signTime;   }
    @Column(name ="examine_user_id",unique=false,nullable=true,insertable=true,updatable=true,length=32)
    public String getExamineUserId() {return examineUserId;}
    @Column(name ="examine_username",unique=false,nullable=true,insertable=true,updatable=true,length=40)
    public String getExamineUsername() { return examineUsername;}
    @Column(name ="examine_time",unique=false,nullable=true,insertable=true,updatable=true,length=0)
    public Date getExamineTime() { return examineTime;}
    @Column(name ="fixed_fee_deduction",unique=false,nullable=true,insertable=true,updatable=true,length=4)
    public Integer getFixedFeeDeduction() { return fixedFeeDeduction;}
    @Column(name ="distributor_rebate_proportion",unique=false,nullable=true,insertable=true,updatable=true,length=20)
    public BigDecimal getDistributorRebateProportion() { return distributorRebateProportion;}
    @Column(name ="user_rebate_proportion",unique=false,nullable=true,insertable=true,updatable=true,length=20)
    public BigDecimal getUserRebateProportion() { return userRebateProportion;}
    @Column(name ="revenue_proportion",unique=false,nullable=true,insertable=true,updatable=true,length=20)
    public BigDecimal getRevenueProportion() { return revenueProportion;}
    @Column(name ="is_permission",unique=false,nullable=true,insertable=true,updatable=true,length=4)
    public Integer getIsPermission() { return isPermission;  }
    @Column(name = "email", unique = false, nullable = true, insertable = true, updatable = true, length = 30)
    public String getEmail() { return email;  }
}
